
package clinicapoo.validator;

import clinicapoo.exceptions.ValidationException;
import clinicapoo.factory.DAO;
import clinicapoo.model.Medico;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author fmontezuma
 */
public class MedicoValidator extends BaseValidator
{
	public void verificarDadosCadastro(Medico m) throws ValidationException
	{
		log.debug(m.toString());

		List<String> erros = new ArrayList<String>();

		if (m.getCpf() == null || m.getCpf().trim().isEmpty())
			erros.add(msg("validator.medico.cpf.deveSerPreenchido"));

		if (!m.getCpf().matches("^[0-9]{11}$"))
			erros.add(msg("validator.medico.cpf.invalido"));

		if (erros.isEmpty() && DAO.medico.procurarPorCpf(m.getCpf()) != null)
			erros.add(msg("validator.medico.cpf.jaCadastrado"));

		if (m.getCrm() == null || m.getCrm().trim().isEmpty())
			erros.add(msg("validator.medico.crm.deveSerPreenchido"));
		
		if (m.getNome() == null || m.getNome().trim().isEmpty())
			erros.add(msg("validator.medico.nome.deveSerPreenchido"));

		if (!erros.isEmpty())
			throw new ValidationException(erros);
	}
}
